package com.yfp.operation.mapper;

import com.yfp.operation.domain.MarCouponPack;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yfp.operation.domain.dto.MarCouponPackReqDTO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 *
 * @description 针对表【mar_coupon_pack(优惠券礼包)】的数据库操作Mapper
 * @createDate 2024-09-25 10:37:51
 * @Entity domain.com.yfp.operation.MarCouponPack
 */
public interface MarCouponPackMapper extends BaseMapper<MarCouponPack> {

    /**
     * 根据请求参数查询礼包活动列表
     *
     * @param marCouponPackReqDTO
     * @return
     */
    List<MarCouponPack> selectListByReq(MarCouponPackReqDTO marCouponPackReqDTO);

    /**
     * 更新礼包活动状态
     *
     * @param id
     * @param status
     */
    void updateStatusById(@Param("id") Long id, @Param("status") Integer status);

    /**
     * 根据礼包活动id批量更新礼包活动状态
     *
     * @param invalidMarCouponPackIds
     * @param status
     */
    void updateStatusByIds(@Param("invalidMarCouponPackIds") List<Long> invalidMarCouponPackIds, @Param("status") Integer status);

    /**
     * 查询详情
     * @param id
     * @return
     */
    MarCouponPack findById(Long id);

    MarCouponPack getById(Long marCouponPackId);

    /**
     * 修改礼包剩余数量
     * @param id
     * @param num
     */
    void updateSurplusCount(@Param("id") Long id, @Param("num") long num);
}




